接續昨天電腦悲劇,繼續把model更完整點
先貼一下昨天那樣建立model,
model會長怎樣
Laravel新增的資料表會主動假設每個資料表有一個主鍵欄位叫做 id
我們可以自己再定義一個 primaryKey
屬性來覆寫掉它
除了id
之外,
像我都會自己建立build_date、edit_date......啦巴拉巴拉的,
我不知道別人會不會,
但是我發現居然laravel也會自動幫忙新增 created_at
和 updated_at
欄位
但是相對的,
如果你的習慣跟我不一樣,
也有可能你的那張表不需要這些欄位的話
那就在我們的model裡面設定 timestamps
屬性,
設定為 false 「public $timestamps = false;
」如下
這樣一來Laravel就不會自做主張了
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Flight extends Model
{
/**
* 指定是否模型應該被戳記時間。
*
* @var bool
*/
public $timestamps = false;
}
阿如果是需要的,但是要改時間格式呢?
有一些業主都很斤斤計較,有時候就會遇到多給他時分秒他不要的狀況哈哈
那就要先在我們的model
設定一下 dateFormat
屬性
這個屬性決定日期如何在資料庫中儲存,以及當模型被序列化成陣列或是 JSON 時的格式:
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Flight extends Model
{
/**
* 模型的日期欄位的儲存格式。
*
* @var string
*/
protected $dateFormat = 'U';
}
然後在新增function
設定顯示的哪個欄位要用什麼格式
例如這樣:
$this->attributes['欄位名稱
']->format('m/d/Y
');
還有好多sql查詢語法,改天用到了再來提好了